package test;

import java.util.*;
import org.objectweb.asm.*;

public class TreeNodeOrgDump implements Opcodes {

	public static byte[] dump () throws Exception {
	
		ClassWriter cw = new ClassWriter(0);
		FieldVisitor fv;
		MethodVisitor mv;
		AnnotationVisitor av0;
		
		cw.visit(V1_3, ACC_PUBLIC, "TreeNode", null, "java/lang/Object", new String[] { "groovy/lang/GroovyObject" });
		
		cw.visitSource("TreeNode.groovy", null);
		
		{
		fv = cw.visitField(ACC_PUBLIC + ACC_FINAL + ACC_STATIC + ACC_SYNTHETIC, "$ownClass", "Ljava/lang/Class;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE, "left", "Ljava/lang/Object;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE, "right", "Ljava/lang/Object;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE, "item", "I", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_FINAL + ACC_STATIC + ACC_SYNTHETIC, "$const$0", "Ljava/lang/Integer;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_FINAL + ACC_STATIC + ACC_SYNTHETIC, "$const$1", "Ljava/lang/Integer;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_FINAL + ACC_STATIC + ACC_SYNTHETIC, "$const$2", "Ljava/lang/Integer;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_FINAL + ACC_STATIC + ACC_SYNTHETIC, "$const$3", "Ljava/lang/Integer;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_FINAL + ACC_STATIC + ACC_SYNTHETIC, "$const$4", "Ljava/lang/Integer;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PUBLIC + ACC_STATIC, "$staticMetaClass", "Ljava/lang/ref/SoftReference;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_TRANSIENT, "metaClass", "Lgroovy/lang/MetaClass;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PUBLIC + ACC_STATIC, "__timeStamp", "Ljava/lang/Long;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PUBLIC + ACC_STATIC, "__timeStamp__239_neverHappen1216335190359", "Ljava/lang/Long;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$class$TreeNode", "Ljava/lang/Class;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$class$java$lang$Class", "Ljava/lang/Class;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$class$java$lang$Long", "Ljava/lang/Class;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$class$groovy$lang$MetaClass", "Ljava/lang/Class;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$class$java$lang$Integer", "Ljava/lang/Class;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$class$java$lang$System", "Ljava/lang/Class;", null, null);
		fv.visitEnd();
		}
		{
		fv = cw.visitField(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$callSiteArray", "Ljava/lang/ref/SoftReference;", null, null);
		fv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC, "<init>", "(I)V", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "<init>", "()V");
		Label l2 = new Label();
		mv.visitLabel(l2);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 2);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitInsn(DUP);
		mv.visitMethodInsn(INVOKEVIRTUAL, "TreeNode", "$getStaticMetaClass", "()Lgroovy/lang/MetaClass;");
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitInsn(DUP);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$groovy$lang$MetaClass", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "groovy/lang/MetaClass");
		mv.visitVarInsn(ALOAD, 0);
		mv.visitInsn(SWAP);
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitInsn(POP);
		Label l3 = new Label();
		mv.visitLabel(l3);
		mv.visitLineNumber(14, l3);
		mv.visitVarInsn(ILOAD, 1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitInsn(SWAP);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "intUnbox", "(Ljava/lang/Object;)I");
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "item", "I");
		mv.visitInsn(POP);
		Label l4 = new Label();
		mv.visitLabel(l4);
		mv.visitInsn(RETURN);
		Label l5 = new Label();
		mv.visitJumpInsn(GOTO, l5);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l5);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("this", "LTreeNode;", null, l2, l4, 0);
		mv.visitLocalVariable("item", "I", null, l2, l4, 1);
		mv.visitMaxs(3, 3);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC, "<init>", "(Ljava/lang/Object;Ljava/lang/Object;I)V", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "<init>", "()V");
		Label l2 = new Label();
		mv.visitLabel(l2);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 4);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitInsn(DUP);
		mv.visitMethodInsn(INVOKEVIRTUAL, "TreeNode", "$getStaticMetaClass", "()Lgroovy/lang/MetaClass;");
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitInsn(DUP);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$groovy$lang$MetaClass", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "groovy/lang/MetaClass");
		mv.visitVarInsn(ALOAD, 0);
		mv.visitInsn(SWAP);
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitInsn(POP);
		Label l3 = new Label();
		mv.visitLabel(l3);
		mv.visitLineNumber(30, l3);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitInsn(DUP);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitInsn(SWAP);
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "left", "Ljava/lang/Object;");
		mv.visitInsn(POP);
		Label l4 = new Label();
		mv.visitLabel(l4);
		mv.visitLineNumber(31, l4);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitInsn(DUP);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitInsn(SWAP);
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "right", "Ljava/lang/Object;");
		mv.visitInsn(POP);
		Label l5 = new Label();
		mv.visitLabel(l5);
		mv.visitLineNumber(32, l5);
		mv.visitVarInsn(ILOAD, 3);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitInsn(SWAP);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "intUnbox", "(Ljava/lang/Object;)I");
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "item", "I");
		mv.visitInsn(POP);
		Label l6 = new Label();
		mv.visitLabel(l6);
		mv.visitInsn(RETURN);
		Label l7 = new Label();
		mv.visitJumpInsn(GOTO, l7);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l7);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("this", "LTreeNode;", null, l2, l6, 0);
		mv.visitLocalVariable("left", "Ljava/lang/Object;", null, l2, l6, 1);
		mv.visitLocalVariable("right", "Ljava/lang/Object;", null, l2, l6, 2);
		mv.visitLocalVariable("item", "I", null, l2, l6, 3);
		mv.visitMaxs(3, 5);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC, "bottomUpTree", "(II)Ljava/lang/Object;", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 2);
		Label l2 = new Label();
		mv.visitLabel(l2);
		mv.visitLineNumber(18, l2);
		mv.visitVarInsn(ILOAD, 1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$0", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "compareGreaterThan", "(Ljava/lang/Object;Ljava/lang/Object;)Z");
		Label l3 = new Label();
		mv.visitJumpInsn(IFEQ, l3);
		Label l4 = new Label();
		mv.visitLabel(l4);
		mv.visitLineNumber(19, l4);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitLdcInsn(new Integer(0));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ILOAD, 1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$1", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(DUP);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "intUnbox", "(Ljava/lang/Object;)I");
		mv.visitVarInsn(ISTORE, 1);
		mv.visitInsn(POP);
		Label l5 = new Label();
		mv.visitLabel(l5);
		mv.visitLineNumber(20, l5);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitLdcInsn(new Integer(1));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ILOAD, 0);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$2", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Integer", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitVarInsn(ASTORE, 3);
		Label l6 = new Label();
		mv.visitLabel(l6);
		mv.visitLineNumber(21, l6);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitLdcInsn(new Integer(2));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		Label l7 = new Label();
		mv.visitLabel(l7);
		mv.visitLineNumber(21, l7);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitLdcInsn(new Integer(3));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		Label l8 = new Label();
		mv.visitLabel(l8);
		mv.visitLineNumber(21, l8);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitLdcInsn(new Integer(4));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 3);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$1", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitVarInsn(ILOAD, 1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "callStatic", "(Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		Label l9 = new Label();
		mv.visitLabel(l9);
		mv.visitLineNumber(22, l9);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitLdcInsn(new Integer(5));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitVarInsn(ALOAD, 3);
		mv.visitVarInsn(ILOAD, 1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "callStatic", "(Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitVarInsn(ILOAD, 0);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "callConstructor", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(ARETURN);
		Label l10 = new Label();
		mv.visitLabel(l10);
		Label l11 = new Label();
		mv.visitJumpInsn(GOTO, l11);
		mv.visitLabel(l3);
		mv.visitLineNumber(25, l3);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitLdcInsn(new Integer(6));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitVarInsn(ILOAD, 0);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "callConstructor", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(ARETURN);
		mv.visitLabel(l11);
		Label l12 = new Label();
		mv.visitJumpInsn(GOTO, l12);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l12);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("item", "I", null, l0, l11, 0);
		mv.visitLocalVariable("depth", "I", null, l0, l11, 1);
		mv.visitLocalVariable("item2", "Ljava/lang/Integer;", null, l6, l10, 3);
		mv.visitMaxs(7, 5);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC, "itemCheck", "()I", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 1);
		Label l2 = new Label();
		mv.visitLabel(l2);
		mv.visitLineNumber(37, l2);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "TreeNode", "left", "Ljava/lang/Object;");
		mv.visitInsn(ACONST_NULL);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "compareEqual", "(Ljava/lang/Object;Ljava/lang/Object;)Z");
		Label l3 = new Label();
		mv.visitJumpInsn(IFEQ, l3);
		Label l4 = new Label();
		mv.visitLabel(l4);
		mv.visitLineNumber(37, l4);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "TreeNode", "item", "I");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Integer", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "intUnbox", "(Ljava/lang/Object;)I");
		mv.visitInsn(IRETURN);
		Label l5 = new Label();
		mv.visitJumpInsn(GOTO, l5);
		mv.visitLabel(l3);
		mv.visitLineNumber(38, l3);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(7));
		mv.visitInsn(AALOAD);
		Label l6 = new Label();
		mv.visitLabel(l6);
		mv.visitLineNumber(38, l6);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(8));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "TreeNode", "item", "I");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "box", "(I)Ljava/lang/Object;");
		Label l7 = new Label();
		mv.visitLabel(l7);
		mv.visitLineNumber(38, l7);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(9));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "TreeNode", "left", "Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		Label l8 = new Label();
		mv.visitLabel(l8);
		mv.visitLineNumber(38, l8);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(10));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "TreeNode", "right", "Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Integer", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation", "intUnbox", "(Ljava/lang/Object;)I");
		mv.visitInsn(IRETURN);
		mv.visitLabel(l5);
		Label l9 = new Label();
		mv.visitJumpInsn(GOTO, l9);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l9);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("this", "LTreeNode;", null, l0, l5, 0);
		mv.visitMaxs(5, 2);
		mv.visitEnd();
		}
		dump_main(cw);
		{
		mv = cw.visitMethod(ACC_PROTECTED + ACC_SYNTHETIC, "$getStaticMetaClass", "()Lgroovy/lang/MetaClass;", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 1);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$staticMetaClass", "Ljava/lang/ref/SoftReference;");
		mv.visitVarInsn(ASTORE, 1);
		mv.visitVarInsn(ALOAD, 1);
		Label l2 = new Label();
		mv.visitJumpInsn(IFNULL, l2);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/ref/SoftReference", "get", "()Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "groovy/lang/MetaClass");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ASTORE, 1);
		Label l3 = new Label();
		mv.visitJumpInsn(IFNONNULL, l3);
		mv.visitLabel(l2);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/Object", "getClass", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/InvokerHelper", "getMetaClass", "(Ljava/lang/Class;)Lgroovy/lang/MetaClass;");
		mv.visitVarInsn(ASTORE, 1);
		mv.visitTypeInsn(NEW, "java/lang/ref/SoftReference");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/ref/SoftReference", "<init>", "(Ljava/lang/Object;)V");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$staticMetaClass", "Ljava/lang/ref/SoftReference;");
		mv.visitLabel(l3);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitInsn(ARETURN);
		mv.visitInsn(RETURN);
		Label l4 = new Label();
		mv.visitLabel(l4);
		Label l5 = new Label();
		mv.visitJumpInsn(GOTO, l5);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l5);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("this", "LTreeNode;", null, l0, l4, 0);
		mv.visitMaxs(3, 2);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "getMetaClass", "()Lgroovy/lang/MetaClass;", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 1);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitInsn(DUP);
		Label l2 = new Label();
		mv.visitJumpInsn(IFNULL, l2);
		mv.visitInsn(ARETURN);
		mv.visitLabel(l2);
		mv.visitInsn(POP);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitInsn(DUP);
		mv.visitMethodInsn(INVOKEVIRTUAL, "TreeNode", "$getStaticMetaClass", "()Lgroovy/lang/MetaClass;");
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitInsn(ARETURN);
		mv.visitInsn(RETURN);
		Label l3 = new Label();
		mv.visitLabel(l3);
		Label l4 = new Label();
		mv.visitJumpInsn(GOTO, l4);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l4);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("this", "LTreeNode;", null, l0, l3, 0);
		mv.visitMaxs(2, 2);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "setMetaClass", "(Lgroovy/lang/MetaClass;)V", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 2);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitFieldInsn(PUTFIELD, "TreeNode", "metaClass", "Lgroovy/lang/MetaClass;");
		mv.visitInsn(RETURN);
		Label l2 = new Label();
		mv.visitLabel(l2);
		mv.visitInsn(RETURN);
		Label l3 = new Label();
		mv.visitJumpInsn(GOTO, l3);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l3);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("this", "LTreeNode;", null, l0, l2, 0);
		mv.visitLocalVariable("mc", "Lgroovy/lang/MetaClass;", null, l0, l2, 1);
		mv.visitMaxs(2, 3);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "invokeMethod", "(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 3);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKEVIRTUAL, "TreeNode", "getMetaClass", "()Lgroovy/lang/MetaClass;");
		mv.visitVarInsn(ALOAD, 0);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitMethodInsn(INVOKEINTERFACE, "groovy/lang/MetaObjectProtocol", "invokeMethod", "(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(ARETURN);
		mv.visitInsn(RETURN);
		Label l2 = new Label();
		mv.visitLabel(l2);
		Label l3 = new Label();
		mv.visitJumpInsn(GOTO, l3);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l3);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("this", "LTreeNode;", null, l0, l2, 0);
		mv.visitLocalVariable("method", "Ljava/lang/String;", null, l0, l2, 1);
		mv.visitLocalVariable("arguments", "Ljava/lang/Object;", null, l0, l2, 2);
		mv.visitMaxs(4, 4);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "getProperty", "(Ljava/lang/String;)Ljava/lang/Object;", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 2);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKEVIRTUAL, "TreeNode", "getMetaClass", "()Lgroovy/lang/MetaClass;");
		mv.visitVarInsn(ALOAD, 0);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitMethodInsn(INVOKEINTERFACE, "groovy/lang/MetaClass", "getProperty", "(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;");
		mv.visitInsn(ARETURN);
		mv.visitInsn(RETURN);
		Label l2 = new Label();
		mv.visitLabel(l2);
		Label l3 = new Label();
		mv.visitJumpInsn(GOTO, l3);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l3);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("this", "LTreeNode;", null, l0, l2, 0);
		mv.visitLocalVariable("property", "Ljava/lang/String;", null, l0, l2, 1);
		mv.visitMaxs(3, 3);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "setProperty", "(Ljava/lang/String;Ljava/lang/Object;)V", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 3);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKEVIRTUAL, "TreeNode", "getMetaClass", "()Lgroovy/lang/MetaClass;");
		mv.visitVarInsn(ALOAD, 0);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitMethodInsn(INVOKEINTERFACE, "groovy/lang/MetaClass", "setProperty", "(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V");
		mv.visitInsn(RETURN);
		mv.visitInsn(RETURN);
		Label l2 = new Label();
		mv.visitLabel(l2);
		mv.visitInsn(RETURN);
		Label l3 = new Label();
		mv.visitJumpInsn(GOTO, l3);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l3);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("this", "LTreeNode;", null, l0, l2, 0);
		mv.visitLocalVariable("property", "Ljava/lang/String;", null, l0, l2, 1);
		mv.visitLocalVariable("value", "Ljava/lang/Object;", null, l0, l2, 2);
		mv.visitMaxs(4, 4);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_STATIC, "<clinit>", "()V", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Class", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Class");
		mv.visitInsn(DUP);
		mv.visitTypeInsn(CHECKCAST, "java/lang/Class");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$ownClass", "Ljava/lang/Class;");
		mv.visitInsn(POP);
		mv.visitTypeInsn(NEW, "java/lang/Integer");
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(0));
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Integer", "<init>", "(I)V");
		mv.visitInsn(DUP);
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$const$0", "Ljava/lang/Integer;");
		mv.visitInsn(POP);
		mv.visitTypeInsn(NEW, "java/lang/Integer");
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(1));
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Integer", "<init>", "(I)V");
		mv.visitInsn(DUP);
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$const$1", "Ljava/lang/Integer;");
		mv.visitInsn(POP);
		mv.visitTypeInsn(NEW, "java/lang/Integer");
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(2));
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Integer", "<init>", "(I)V");
		mv.visitInsn(DUP);
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$const$2", "Ljava/lang/Integer;");
		mv.visitInsn(POP);
		mv.visitTypeInsn(NEW, "java/lang/Integer");
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(10));
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Integer", "<init>", "(I)V");
		mv.visitInsn(DUP);
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$const$3", "Ljava/lang/Integer;");
		mv.visitInsn(POP);
		mv.visitTypeInsn(NEW, "java/lang/Integer");
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(4));
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Integer", "<init>", "(I)V");
		mv.visitInsn(DUP);
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$const$4", "Ljava/lang/Integer;");
		mv.visitInsn(POP);
		mv.visitTypeInsn(NEW, "java/lang/Long");
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Long(1216335190359L));
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Long", "<init>", "(J)V");
		mv.visitInsn(DUP);
		mv.visitTypeInsn(CHECKCAST, "java/lang/Long");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "__timeStamp", "Ljava/lang/Long;");
		mv.visitInsn(POP);
		mv.visitTypeInsn(NEW, "java/lang/Long");
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Long(0L));
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Long", "<init>", "(J)V");
		mv.visitInsn(DUP);
		mv.visitTypeInsn(CHECKCAST, "java/lang/Long");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "__timeStamp__239_neverHappen1216335190359", "Ljava/lang/Long;");
		mv.visitInsn(POP);
		mv.visitInsn(RETURN);
		mv.visitInsn(RETURN);
		Label l2 = new Label();
		mv.visitJumpInsn(GOTO, l2);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l2);
		mv.visitInsn(NOP);
		mv.visitMaxs(4, 0);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "this$2$bottomUpTree", "(II)Ljava/lang/Object;", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitVarInsn(ILOAD, 1);
		mv.visitVarInsn(ILOAD, 2);
		mv.visitMethodInsn(INVOKESPECIAL, "TreeNode", "bottomUpTree", "(II)Ljava/lang/Object;");
		mv.visitInsn(ARETURN);
		mv.visitMaxs(3, 3);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$wait", "()V", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "wait", "()V");
		mv.visitInsn(RETURN);
		mv.visitMaxs(1, 1);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$toString", "()Ljava/lang/String;", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "toString", "()Ljava/lang/String;");
		mv.visitInsn(ARETURN);
		mv.visitMaxs(1, 1);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$wait", "(J)V", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitVarInsn(LLOAD, 1);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "wait", "(J)V");
		mv.visitInsn(RETURN);
		mv.visitMaxs(3, 3);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$wait", "(JI)V", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitVarInsn(LLOAD, 1);
		mv.visitVarInsn(ILOAD, 3);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "wait", "(JI)V");
		mv.visitInsn(RETURN);
		mv.visitMaxs(4, 4);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$notify", "()V", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "notify", "()V");
		mv.visitInsn(RETURN);
		mv.visitMaxs(1, 1);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$notifyAll", "()V", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "notifyAll", "()V");
		mv.visitInsn(RETURN);
		mv.visitMaxs(1, 1);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$getClass", "()Ljava/lang/Class;", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "getClass", "()Ljava/lang/Class;");
		mv.visitInsn(ARETURN);
		mv.visitMaxs(1, 1);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$equals", "(Ljava/lang/Object;)Z", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "equals", "(Ljava/lang/Object;)Z");
		mv.visitInsn(IRETURN);
		mv.visitMaxs(2, 2);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$clone", "()Ljava/lang/Object;", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "clone", "()Ljava/lang/Object;");
		mv.visitInsn(ARETURN);
		mv.visitMaxs(1, 1);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$hashCode", "()I", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "hashCode", "()I");
		mv.visitInsn(IRETURN);
		mv.visitMaxs(1, 1);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PUBLIC + ACC_SYNTHETIC, "super$1$finalize", "()V", null, null);
		mv.visitCode();
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "finalize", "()V");
		mv.visitInsn(RETURN);
		mv.visitMaxs(1, 1);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$get$$class$TreeNode", "()Ljava/lang/Class;", null, null);
		mv.visitCode();
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$class$TreeNode", "Ljava/lang/Class;");
		mv.visitInsn(DUP);
		Label l0 = new Label();
		mv.visitJumpInsn(IFNONNULL, l0);
		mv.visitInsn(POP);
		mv.visitLdcInsn("TreeNode");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "class$", "(Ljava/lang/String;)Ljava/lang/Class;");
		mv.visitInsn(DUP);
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$class$TreeNode", "Ljava/lang/Class;");
		mv.visitLabel(l0);
		mv.visitInsn(ARETURN);
		mv.visitMaxs(2, 0);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$get$$class$java$lang$Class", "()Ljava/lang/Class;", null, null);
		mv.visitCode();
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$class$java$lang$Class", "Ljava/lang/Class;");
		mv.visitInsn(DUP);
		Label l0 = new Label();
		mv.visitJumpInsn(IFNONNULL, l0);
		mv.visitInsn(POP);
		mv.visitLdcInsn("java.lang.Class");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "class$", "(Ljava/lang/String;)Ljava/lang/Class;");
		mv.visitInsn(DUP);
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$class$java$lang$Class", "Ljava/lang/Class;");
		mv.visitLabel(l0);
		mv.visitInsn(ARETURN);
		mv.visitMaxs(2, 0);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$get$$class$java$lang$Long", "()Ljava/lang/Class;", null, null);
		mv.visitCode();
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$class$java$lang$Long", "Ljava/lang/Class;");
		mv.visitInsn(DUP);
		Label l0 = new Label();
		mv.visitJumpInsn(IFNONNULL, l0);
		mv.visitInsn(POP);
		mv.visitLdcInsn("java.lang.Long");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "class$", "(Ljava/lang/String;)Ljava/lang/Class;");
		mv.visitInsn(DUP);
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$class$java$lang$Long", "Ljava/lang/Class;");
		mv.visitLabel(l0);
		mv.visitInsn(ARETURN);
		mv.visitMaxs(2, 0);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$get$$class$groovy$lang$MetaClass", "()Ljava/lang/Class;", null, null);
		mv.visitCode();
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$class$groovy$lang$MetaClass", "Ljava/lang/Class;");
		mv.visitInsn(DUP);
		Label l0 = new Label();
		mv.visitJumpInsn(IFNONNULL, l0);
		mv.visitInsn(POP);
		mv.visitLdcInsn("groovy.lang.MetaClass");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "class$", "(Ljava/lang/String;)Ljava/lang/Class;");
		mv.visitInsn(DUP);
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$class$groovy$lang$MetaClass", "Ljava/lang/Class;");
		mv.visitLabel(l0);
		mv.visitInsn(ARETURN);
		mv.visitMaxs(2, 0);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$get$$class$java$lang$Integer", "()Ljava/lang/Class;", null, null);
		mv.visitCode();
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$class$java$lang$Integer", "Ljava/lang/Class;");
		mv.visitInsn(DUP);
		Label l0 = new Label();
		mv.visitJumpInsn(IFNONNULL, l0);
		mv.visitInsn(POP);
		mv.visitLdcInsn("java.lang.Integer");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "class$", "(Ljava/lang/String;)Ljava/lang/Class;");
		mv.visitInsn(DUP);
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$class$java$lang$Integer", "Ljava/lang/Class;");
		mv.visitLabel(l0);
		mv.visitInsn(ARETURN);
		mv.visitMaxs(2, 0);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$get$$class$java$lang$System", "()Ljava/lang/Class;", null, null);
		mv.visitCode();
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$class$java$lang$System", "Ljava/lang/Class;");
		mv.visitInsn(DUP);
		Label l0 = new Label();
		mv.visitJumpInsn(IFNONNULL, l0);
		mv.visitInsn(POP);
		mv.visitLdcInsn("java.lang.System");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "class$", "(Ljava/lang/String;)Ljava/lang/Class;");
		mv.visitInsn(DUP);
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$class$java$lang$System", "Ljava/lang/Class;");
		mv.visitLabel(l0);
		mv.visitInsn(ARETURN);
		mv.visitMaxs(2, 0);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_STATIC + ACC_SYNTHETIC, "class$", "(Ljava/lang/String;)Ljava/lang/Class;", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "java/lang/ClassNotFoundException");
		mv.visitLabel(l0);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESTATIC, "java/lang/Class", "forName", "(Ljava/lang/String;)Ljava/lang/Class;");
		mv.visitInsn(ARETURN);
		mv.visitLabel(l1);
		mv.visitVarInsn(ASTORE, 1);
		mv.visitTypeInsn(NEW, "java/lang/NoClassDefFoundError");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/ClassNotFoundException", "getMessage", "()Ljava/lang/String;");
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/NoClassDefFoundError", "<init>", "(Ljava/lang/String;)V");
		mv.visitInsn(ATHROW);
		mv.visitMaxs(3, 2);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$createCallSiteArray", "()Lorg/codehaus/groovy/runtime/callsite/CallSiteArray;", null, null);
		mv.visitCode();
		mv.visitTypeInsn(NEW, "org/codehaus/groovy/runtime/callsite/CallSiteArray");
		mv.visitInsn(DUP);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$ownClass", "Ljava/lang/Class;");
		mv.visitLdcInsn(new Integer(40));
		mv.visitTypeInsn(ANEWARRAY, "java/lang/String");
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(0));
		mv.visitLdcInsn("minus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(1));
		mv.visitLdcInsn("multiply");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(2));
		mv.visitLdcInsn("<$constructor$>");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(3));
		mv.visitLdcInsn("bottomUpTree");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(4));
		mv.visitLdcInsn("minus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(5));
		mv.visitLdcInsn("bottomUpTree");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(6));
		mv.visitLdcInsn("<$constructor$>");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(7));
		mv.visitLdcInsn("minus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(8));
		mv.visitLdcInsn("plus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(9));
		mv.visitLdcInsn("itemCheck");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(10));
		mv.visitLdcInsn("itemCheck");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(11));
		mv.visitLdcInsn("currentTimeMillis");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(12));
		mv.visitLdcInsn("length");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(13));
		mv.visitLdcInsn("toInteger");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(14));
		mv.visitLdcInsn("getAt");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(15));
		mv.visitLdcInsn("max");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(16));
		mv.visitLdcInsn("plus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(17));
		mv.visitLdcInsn("plus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(18));
		mv.visitLdcInsn("itemCheck");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(19));
		mv.visitLdcInsn("bottomUpTree");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(20));
		mv.visitLdcInsn("println");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(21));
		mv.visitLdcInsn("bottomUpTree");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(22));
		mv.visitLdcInsn("leftShift");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(23));
		mv.visitLdcInsn("plus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(24));
		mv.visitLdcInsn("minus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(25));
		mv.visitLdcInsn("iterator");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(26));
		mv.visitLdcInsn("plus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(27));
		mv.visitLdcInsn("itemCheck");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(28));
		mv.visitLdcInsn("bottomUpTree");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(29));
		mv.visitLdcInsn("plus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(30));
		mv.visitLdcInsn("itemCheck");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(31));
		mv.visitLdcInsn("bottomUpTree");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(32));
		mv.visitLdcInsn("println");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(33));
		mv.visitLdcInsn("multiply");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(34));
		mv.visitLdcInsn("plus");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(35));
		mv.visitLdcInsn("currentTimeMillis");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(36));
		mv.visitLdcInsn("println");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(37));
		mv.visitLdcInsn("itemCheck");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(38));
		mv.visitLdcInsn("println");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitLdcInsn(new Integer(39));
		mv.visitLdcInsn("minus");
		mv.visitInsn(AASTORE);
		mv.visitMethodInsn(INVOKESPECIAL, "org/codehaus/groovy/runtime/callsite/CallSiteArray", "<init>", "(Ljava/lang/Class;[Ljava/lang/String;)V");
		mv.visitInsn(ARETURN);
		mv.visitMaxs(7, 0);
		mv.visitEnd();
		}
		{
		mv = cw.visitMethod(ACC_PRIVATE + ACC_STATIC + ACC_SYNTHETIC, "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;", null, null);
		mv.visitCode();
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$callSiteArray", "Ljava/lang/ref/SoftReference;");
		Label l0 = new Label();
		mv.visitJumpInsn(IFNULL, l0);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$callSiteArray", "Ljava/lang/ref/SoftReference;");
		mv.visitMethodInsn(INVOKEVIRTUAL, "java/lang/ref/SoftReference", "get", "()Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "org/codehaus/groovy/runtime/callsite/CallSiteArray");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ASTORE, 0);
		Label l1 = new Label();
		mv.visitJumpInsn(IFNONNULL, l1);
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$createCallSiteArray", "()Lorg/codehaus/groovy/runtime/callsite/CallSiteArray;");
		mv.visitVarInsn(ASTORE, 0);
		mv.visitTypeInsn(NEW, "java/lang/ref/SoftReference");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKESPECIAL, "java/lang/ref/SoftReference", "<init>", "(Ljava/lang/Object;)V");
		mv.visitFieldInsn(PUTSTATIC, "TreeNode", "$callSiteArray", "Ljava/lang/ref/SoftReference;");
		mv.visitLabel(l1);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETFIELD, "org/codehaus/groovy/runtime/callsite/CallSiteArray", "array", "[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitInsn(ARETURN);
		mv.visitMaxs(3, 1);
		mv.visitEnd();
		}
		cw.visitEnd();
		
		return cw.toByteArray();
	}

	private static void dump_main(ClassWriter cw) {
		MethodVisitor mv;
		mv = cw.visitMethod(ACC_PUBLIC + ACC_STATIC + ACC_VARARGS, "main", "([Ljava/lang/String;)V", null, null);
		mv.visitCode();
		Label l0 = new Label();
		Label l1 = new Label();
		mv.visitTryCatchBlock(l0, l1, l1, "groovy/lang/GroovyRuntimeException");
		mv.visitLabel(l0);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$getCallSiteArray", "()[Lorg/codehaus/groovy/runtime/callsite/CallSite;");
		mv.visitVarInsn(ASTORE, 1);
		Label l2 = new Label();
		mv.visitLabel(l2);
		mv.visitLineNumber(42, l2);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(11));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$System", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		//mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Long", "()Ljava/lang/Class;");
		//mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		//mv.visitTypeInsn(CHECKCAST, "java/lang/Long");
		//mv.visitVarInsn(ASTORE, 2);
		mv.visitMethodInsn(INVOKEINTERFACE, "java/lang/Long", "longValue", "()J");		
		mv.visitVarInsn(LSTORE, 2); // J need 2,3
		Label l3 = new Label();
		mv.visitLabel(l3);
		mv.visitLineNumber(43, l3);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(12));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "callGetProperty", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$0", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "compareEqual", "(Ljava/lang/Object;Ljava/lang/Object;)Z");
		Label l4 = new Label();
		mv.visitJumpInsn(IFEQ, l4);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$3", "Ljava/lang/Integer;");
		Label l5 = new Label();
		mv.visitJumpInsn(GOTO, l5);
		mv.visitLabel(l4);
		mv.visitLineNumber(43, l4);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(13));
		mv.visitInsn(AALOAD);
		Label l6 = new Label();
		mv.visitLabel(l6);
		mv.visitLineNumber(43, l6);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(14));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 0);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$0", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitLabel(l5);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Integer", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitVarInsn(ASTORE, 3);
		Label l7 = new Label();
		mv.visitLabel(l7);
		mv.visitLineNumber(44, l7);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$4", "Ljava/lang/Integer;");
		mv.visitVarInsn(ASTORE, 4);
		Label l8 = new Label();
		mv.visitLabel(l8);
		mv.visitLineNumber(45, l8);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(15));
		mv.visitInsn(AALOAD);
		mv.visitInsn(ICONST_2);
		mv.visitTypeInsn(ANEWARRAY, "java/lang/Object");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_0);
		Label l9 = new Label();
		mv.visitLabel(l9);
		mv.visitLineNumber(45, l9);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(16));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 4);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$2", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_1);
		mv.visitVarInsn(ALOAD, 3);
		mv.visitInsn(AASTORE);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "createList", "([Ljava/lang/Object;)Ljava/util/List;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Integer", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitVarInsn(ASTORE, 5);
		Label l10 = new Label();
		mv.visitLabel(l10);
		mv.visitLineNumber(46, l10);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(17));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 5);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$1", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Integer", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitVarInsn(ASTORE, 6);
		Label l11 = new Label();
		mv.visitLabel(l11);
		mv.visitLineNumber(48, l11);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(18));
		mv.visitInsn(AALOAD);
		Label l12 = new Label();
		mv.visitLabel(l12);
		mv.visitLineNumber(48, l12);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(19));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$0", "Ljava/lang/Integer;");
		mv.visitVarInsn(ALOAD, 6);
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Integer", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitVarInsn(ASTORE, 7);
		Label l13 = new Label();
		mv.visitLabel(l13);
		mv.visitLineNumber(49, l13);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(20));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitTypeInsn(NEW, "org/codehaus/groovy/runtime/GStringImpl");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_2);
		mv.visitTypeInsn(ANEWARRAY, "java/lang/Object");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_0);
		mv.visitVarInsn(ALOAD, 6);
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_1);
		mv.visitVarInsn(ALOAD, 7);
		mv.visitInsn(AASTORE);
		mv.visitInsn(ICONST_3);
		mv.visitTypeInsn(ANEWARRAY, "java/lang/String");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_0);
		mv.visitLdcInsn("stretch tree of depth ");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_1);
		mv.visitLdcInsn("\u0009 check: ");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_2);
		mv.visitLdcInsn("");
		mv.visitInsn(AASTORE);
		mv.visitMethodInsn(INVOKESPECIAL, "org/codehaus/groovy/runtime/GStringImpl", "<init>", "([Ljava/lang/Object;[Ljava/lang/String;)V");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "callStatic", "(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(POP);
		Label l14 = new Label();
		mv.visitLabel(l14);
		mv.visitLineNumber(51, l14);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(21));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$0", "Ljava/lang/Integer;");
		mv.visitVarInsn(ALOAD, 5);
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitVarInsn(ASTORE, 8);
		Label l15 = new Label();
		mv.visitLabel(l15);
		mv.visitLineNumber(53, l15);
		mv.visitVarInsn(ALOAD, 4);
		mv.visitVarInsn(ASTORE, 9);
		Label l16 = new Label();
		mv.visitLabel(l16);
		mv.visitLineNumber(54, l16);
		mv.visitVarInsn(ALOAD, 9);
		mv.visitVarInsn(ALOAD, 5);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "compareLessThanEqual", "(Ljava/lang/Object;Ljava/lang/Object;)Z");
		Label l17 = new Label();
		mv.visitJumpInsn(IFEQ, l17);
		Label l18 = new Label();
		mv.visitLabel(l18);
		mv.visitLineNumber(55, l18);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(22));
		mv.visitInsn(AALOAD);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$1", "Ljava/lang/Integer;");
		Label l19 = new Label();
		mv.visitLabel(l19);
		mv.visitLineNumber(55, l19);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(23));
		mv.visitInsn(AALOAD);
		Label l20 = new Label();
		mv.visitLabel(l20);
		mv.visitLineNumber(55, l20);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(24));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 5);
		mv.visitVarInsn(ALOAD, 9);
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitVarInsn(ALOAD, 4);
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Integer", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Integer");
		mv.visitVarInsn(ASTORE, 10);
		Label l21 = new Label();
		mv.visitLabel(l21);
		mv.visitLineNumber(56, l21);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$0", "Ljava/lang/Integer;");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ASTORE, 7);
		mv.visitInsn(POP);
		Label l22 = new Label();
		mv.visitLabel(l22);
		mv.visitLineNumber(57, l22);
		mv.visitInsn(ACONST_NULL);
		mv.visitVarInsn(ASTORE, 11);
		Label l23 = new Label();
		mv.visitLabel(l23);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(25));
		mv.visitInsn(AALOAD);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$1", "Ljava/lang/Integer;");
		mv.visitVarInsn(ALOAD, 10);
		mv.visitInsn(ICONST_1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "createRange", "(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/util/List;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitVarInsn(ASTORE, 12);
		Label l24 = new Label();
		mv.visitLabel(l24);
		mv.visitVarInsn(ALOAD, 12);
		mv.visitMethodInsn(INVOKEINTERFACE, "java/util/Iterator", "hasNext", "()Z");
		Label l25 = new Label();
		mv.visitJumpInsn(IFEQ, l25);
		mv.visitVarInsn(ALOAD, 12);
		mv.visitMethodInsn(INVOKEINTERFACE, "java/util/Iterator", "next", "()Ljava/lang/Object;");
		mv.visitVarInsn(ASTORE, 11);
		Label l26 = new Label();
		mv.visitLabel(l26);
		mv.visitLineNumber(58, l26);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(26));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 7);
		Label l27 = new Label();
		mv.visitLabel(l27);
		mv.visitLineNumber(58, l27);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(27));
		mv.visitInsn(AALOAD);
		Label l28 = new Label();
		mv.visitLabel(l28);
		mv.visitLineNumber(58, l28);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(28));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitVarInsn(ALOAD, 11);
		mv.visitVarInsn(ALOAD, 9);
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ASTORE, 7);
		mv.visitInsn(POP);
		Label l29 = new Label();
		mv.visitLabel(l29);
		mv.visitLineNumber(59, l29);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(29));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 7);
		Label l30 = new Label();
		mv.visitLabel(l30);
		mv.visitLineNumber(59, l30);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(30));
		mv.visitInsn(AALOAD);
		Label l31 = new Label();
		mv.visitLabel(l31);
		mv.visitLineNumber(59, l31);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(31));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitVarInsn(ALOAD, 11);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unaryMinus", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitVarInsn(ALOAD, 9);
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ASTORE, 7);
		mv.visitInsn(POP);
		mv.visitJumpInsn(GOTO, l24);
		mv.visitLabel(l25);
		mv.visitLineNumber(62, l25);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(32));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitTypeInsn(NEW, "org/codehaus/groovy/runtime/GStringImpl");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_3);
		mv.visitTypeInsn(ANEWARRAY, "java/lang/Object");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_0);
		Label l32 = new Label();
		mv.visitLabel(l32);
		mv.visitLineNumber(62, l32);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(33));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 10);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$2", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_1);
		mv.visitVarInsn(ALOAD, 9);
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_2);
		mv.visitVarInsn(ALOAD, 7);
		mv.visitInsn(AASTORE);
		mv.visitInsn(ICONST_4);
		mv.visitTypeInsn(ANEWARRAY, "java/lang/String");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_0);
		mv.visitLdcInsn("");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_1);
		mv.visitLdcInsn("\u0009 trees of depth ");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_2);
		mv.visitLdcInsn("\u0009 check: ");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_3);
		mv.visitLdcInsn("");
		mv.visitInsn(AASTORE);
		mv.visitMethodInsn(INVOKESPECIAL, "org/codehaus/groovy/runtime/GStringImpl", "<init>", "([Ljava/lang/Object;[Ljava/lang/String;)V");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "callStatic", "(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(POP);
		Label l33 = new Label();
		mv.visitLabel(l33);
		mv.visitLineNumber(63, l33);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(34));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 9);
		mv.visitFieldInsn(GETSTATIC, "TreeNode", "$const$2", "Ljava/lang/Integer;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(DUP);
		mv.visitVarInsn(ASTORE, 9);
		mv.visitInsn(POP);
		Label l34 = new Label();
		mv.visitLabel(l34);
		mv.visitJumpInsn(GOTO, l16);
		mv.visitLabel(l17);
		mv.visitLineNumber(65, l17);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(35));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$System", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$java$lang$Long", "()Ljava/lang/Class;");
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "castToType", "(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;");
		mv.visitTypeInsn(CHECKCAST, "java/lang/Long");
		mv.visitVarInsn(ASTORE, 10);
		Label l35 = new Label();
		mv.visitLabel(l35);
		mv.visitLineNumber(66, l35);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(36));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitTypeInsn(NEW, "org/codehaus/groovy/runtime/GStringImpl");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_2);
		mv.visitTypeInsn(ANEWARRAY, "java/lang/Object");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_0);
		mv.visitVarInsn(ALOAD, 5);
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_1);
		Label l36 = new Label();
		mv.visitLabel(l36);
		mv.visitLineNumber(66, l36);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(37));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 8);
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(AASTORE);
		mv.visitInsn(ICONST_3);
		mv.visitTypeInsn(ANEWARRAY, "java/lang/String");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_0);
		mv.visitLdcInsn("long lived tree of depth ");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_1);
		mv.visitLdcInsn("\u0009 check: ");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_2);
		mv.visitLdcInsn("");
		mv.visitInsn(AASTORE);
		mv.visitMethodInsn(INVOKESPECIAL, "org/codehaus/groovy/runtime/GStringImpl", "<init>", "([Ljava/lang/Object;[Ljava/lang/String;)V");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "callStatic", "(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(POP);
		Label l37 = new Label();
		mv.visitLabel(l37);
		mv.visitLineNumber(67, l37);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(38));
		mv.visitInsn(AALOAD);
		mv.visitMethodInsn(INVOKESTATIC, "TreeNode", "$get$$class$TreeNode", "()Ljava/lang/Class;");
		mv.visitTypeInsn(NEW, "org/codehaus/groovy/runtime/GStringImpl");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_1);
		mv.visitTypeInsn(ANEWARRAY, "java/lang/Object");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_0);
		Label l38 = new Label();
		mv.visitLabel(l38);
		mv.visitLineNumber(67, l38);
		mv.visitVarInsn(ALOAD, 1);
		mv.visitLdcInsn(new Integer(39));
		mv.visitInsn(AALOAD);
		mv.visitVarInsn(ALOAD, 10);
		mv.visitVarInsn(ALOAD, 2);
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "call", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(AASTORE);
		mv.visitInsn(ICONST_2);
		mv.visitTypeInsn(ANEWARRAY, "java/lang/String");
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_0);
		mv.visitLdcInsn("");
		mv.visitInsn(AASTORE);
		mv.visitInsn(DUP);
		mv.visitInsn(ICONST_1);
		mv.visitLdcInsn("ms");
		mv.visitInsn(AASTORE);
		mv.visitMethodInsn(INVOKESPECIAL, "org/codehaus/groovy/runtime/GStringImpl", "<init>", "([Ljava/lang/Object;[Ljava/lang/String;)V");
		mv.visitMethodInsn(INVOKEINTERFACE, "org/codehaus/groovy/runtime/callsite/CallSite", "callStatic", "(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;");
		mv.visitInsn(POP);
		mv.visitInsn(RETURN);
		Label l39 = new Label();
		mv.visitLabel(l39);
		mv.visitInsn(RETURN);
		Label l40 = new Label();
		mv.visitJumpInsn(GOTO, l40);
		mv.visitLabel(l1);
		mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ScriptBytecodeAdapter", "unwrap", "(Lgroovy/lang/GroovyRuntimeException;)Ljava/lang/Throwable;");
		mv.visitInsn(ATHROW);
		mv.visitLabel(l40);
		mv.visitInsn(NOP);
		mv.visitLocalVariable("args", "[Ljava/lang/String;", null, l0, l39, 0);
		mv.visitLocalVariable("start", "Ljava/lang/Long;", null, l3, l39, 2);
		mv.visitLocalVariable("n", "Ljava/lang/Integer;", null, l7, l39, 3);
		mv.visitLocalVariable("minDepth", "Ljava/lang/Integer;", null, l8, l39, 4);
		mv.visitLocalVariable("maxDepth", "Ljava/lang/Integer;", null, l10, l39, 5);
		mv.visitLocalVariable("stretchDepth", "Ljava/lang/Integer;", null, l11, l39, 6);
		mv.visitLocalVariable("check", "Ljava/lang/Integer;", null, l13, l39, 7);
		mv.visitLocalVariable("longLivedTree", "Ljava/lang/Object;", null, l15, l39, 8);
		mv.visitLocalVariable("depth", "Ljava/lang/Integer;", null, l16, l39, 9);
		mv.visitLocalVariable("iterations", "Ljava/lang/Integer;", null, l21, l34, 10);
		mv.visitLocalVariable("i", "Ljava/lang/Object;", null, l23, l25, 11);
		mv.visitLocalVariable("stop", "Ljava/lang/Long;", null, l35, l39, 10);
		mv.visitMaxs(10, 13);
		mv.visitEnd();
	}
}
